package net.zoneland.data.dataprofiling.common.service;

import net.zoneland.data.dataprofiling.common.domain.DictEntity;
import net.zoneland.data.dataprofiling.common.domain.DictQuery;
import net.zoneland.data.dataprofiling.common.utils.PageUtils;
import net.zoneland.data.dataprofiling.system.domain.UserEntity;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**
 * 字典表
 * 
 * @author chglee
 * @email 1992lcg@163.com
 * @date 2017-09-29 18:28:07
 */
public interface DictService {
	
	DictEntity get(Long id);
	
	PageUtils list(Integer page, Integer size, DictQuery dictQuery);
	
	int count(DictQuery dictQuery);
	
	int save(DictEntity dict);
	
	int update(DictEntity dict);
	
	int remove(Long id);
	
	int batchRemove(Long[] ids);

	List<DictEntity> listType();
	
	String getName(String type, String value);

	/**
	 * 获取爱好列表
	 * @return
     * @param userDO
	 */
	List<DictEntity> getHobbyList(UserEntity userDO);

	/**
	 * 获取性别列表
 	 * @return
	 */
	List<DictEntity> getSexList();

	/**
	 * 根据type获取数据
	 * @param map
	 * @return
	 */
	List<DictEntity> listByType(String type);

}
